﻿using System.Collections;
using System.Collections.Generic;
using System.Diagnostics.Contracts;
using Library.Collections.Generic;

namespace Library.Collections.Specialized
{
    public interface IContainerBulk : IContainer
    {
        [Pure]
        bool ContainsAll(IEnumerable items);

        [Pure]
        bool ContainsAny(IEnumerable items);

        [Pure]
        bool ContainsNone(IEnumerable items);
    }

    public interface IContainerBulk<TElement> : IContainer<TElement>
    {
        [Pure]
        bool ContainsAll(IEnumerable<TElement> items);

        [Pure]
        bool ContainsAny(IEnumerable<TElement> items);

        [Pure]
        bool ContainsNone(IEnumerable<TElement> items);
    }
}
